// объект малой карты

var Little_Map = {  canvasName: 'LittleMap', //  название холста малой карты
                    x: 0,       // координаты области изображения карты (относит. [0,0]) для вырезки
                    y: 0,
                    wM: 800,                // размеры вырезаемой области из карты
                    hM: 400,
                    xp: 0,      // координаты поля холста малой карты (верх. левая точка), в кот. помещ. вырез. область
                    yp: 0,
                    wl: 80,                 // размеры области малой карты, в кот. помещается вырезанная область
                    hl: 40,
                    xc: 5,                  // размеры одной ячейки малой карты
                    yc: 2.5,
                    xcn: 165,               // координаты центра самой верхней ячейки малой карты
                    ycn: 5,
                    xun: 0,     // координаты точки, в кот. находится юнит на малой карте
                    yun: 0,
                    iun: false,     // индикатор того, что юнит уже отрисовывался
                    init: Init_Little_Map,
                    draw: Draw_Area,
                    unit: Draw_Unit_on_Area
};

function Init_Little_Map(NameCallCanvas) {
    // инициализация холста малой карты
    jc.start(Little_Map.canvasName, 25);
    jc.rect(0, 0, 330, 170, true);
    jc.start(Little_Map.NameCallCanvas, 25);
}

function Draw_Area(NameCallCanvas) {
    // инициализация мелкой карты
    Little_Map.x = (View_Map.iView - View_Map.jView) * View_Map.cW/2 + View_Map.xMap - 375;
    Little_Map.y = (View_Map.iView + View_Map.jView) * View_Map.cH/2 + View_Map.yMap;
    Little_Map.xp = (View_Map.iView - View_Map.jView) * Little_Map.xc/2 + Little_Map.xcn - 40;
    Little_Map.yp = (View_Map.iView + View_Map.jView) * Little_Map.yc/2 + Little_Map.ycn;
    jc.start(Little_Map.canvasName, 25);
    jc.image(Map.view,Little_Map.x,Little_Map.y,Little_Map.wM,Little_Map.hM,
        Little_Map.xp,Little_Map.yp,Little_Map.wl,Little_Map.hl)
            .layer('little_map');
    jc.start(NameCallCanvas, 25);
}

function Draw_Unit_on_Area(NameCallCanvas) {
    // подсвечивание ячейки, где расположен юнит
    jc.start(Little_Map.canvasName, 25);
    if (Little_Map.iun) jc({layer:'player'}).del();
    else Little_Map.iun = true;
    Little_Map.xun = (Gamer.i - Gamer.j)* Little_Map.xc/2 + Little_Map.xcn;
    Little_Map.yun = (Gamer.i + Gamer.j) * Little_Map.yc/2 + Little_Map.ycn;
    jc.line([[Little_Map.xun,Little_Map.yun],[Little_Map.xun+2.5,Little_Map.yun+1.25],
        [Little_Map.xun,Little_Map.yun+2.5],[Little_Map.xun-2.5,Little_Map.yun+1.25]], '#ff0000', 1).layer('player');
    jc.start(NameCallCanvas, 25);
}